package br.org.credfaz.ficha.action;

import java.text.ParseException;
import java.util.List;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;

import br.org.credfaz.ficha.dao.ClienteDAO;
import br.org.credfaz.ficha.dao.ClienteFisicaDAO;
import br.org.credfaz.ficha.dao.ContaCapitalDAO;
import br.org.credfaz.ficha.dao.ContratoCreditoDAO;
import br.org.credfaz.ficha.dao.PlanoPagamentoDAO;
import br.org.credfaz.ficha.modelo.Cliente;
import br.org.credfaz.ficha.modelo.ClienteFisica;
import br.org.credfaz.ficha.modelo.ContaCapital;
import br.org.credfaz.ficha.modelo.ContratoCredito;
import br.org.credfaz.ficha.modelo.Idade;
import br.org.credfaz.ficha.modelo.PlanoPagamento;
import br.org.credfaz.ficha.utils.CalculaIdade;

public class AvaliacaoPreviaAction {

	
	private Long idcliente;
	private Cliente cliente;
	private ContaCapital ccapital;
	private ClienteFisica cfisica;
	private Idade idade;
	private List<ContratoCredito> ccredito;
	private List<PlanoPagamento> ppagamento;

	@Action(value = "avaliacaoPrevia", results = { @Result(name = "ok", location = "/avaliacao-previa.jsp") })
	
	public String execute() throws ParseException {

		cliente = new ClienteDAO().buscaPorId(idcliente);
		ccapital = new ContaCapitalDAO().buscaPorId(idcliente);
		cfisica = new ClienteFisicaDAO().buscaPorId(idcliente);
		idade = new CalculaIdade().buscaPorId(idcliente);
		ccredito = new ContratoCreditoDAO().buscaPorId(idcliente);
		ppagamento = new PlanoPagamentoDAO().buscaPorId(idcliente);

		return "ok";
	}

	public void setIdcliente(Long idcliente) {
		System.out.println(idcliente);
		this.idcliente = idcliente;
	}

	public Cliente getCliente() {
		return cliente;
	}

	public ContaCapital getCcapital() {
		return ccapital;
	}

	public ClienteFisica getCfisica() {
		return cfisica;
	}

	public Idade getIdade() {
		return idade;
	}

	public List<ContratoCredito> getCcredito() {
		return ccredito;
	}

	public List<PlanoPagamento> getPpagamento() {
		return ppagamento;
	}

}
